package Object;
/*
测试重写Object的toString方法与equals方法
 */
public class Demo {
    public static void main(String[] args) {
        Point p = new Point(1,2);
        /*
            String toString()方法是Object定义的方法
            该方法的作用是将当前对象转换为一个字符串,Object的默认实现
         */
        String str = p.toString();
        System.out.println(str);
        //向控制台输出p对象
        /*
        System.out.println(objec o);
        向控制台输出一个对象时,该方法会输出该对象tostring方法返回的字符串
         */
        System.out.println(p);
        /*
        在进行字符串连接时,费字符串对象内容转换为字符串,此时会调用toString
        方法将其转换为字符串
         */
        String line = "对象内容"+p;
        System.out.println(line);
        /*
        Object另一个重写方法:equals
        判断两个同类型的实力之际的内容是否相同
         */
        Point p2 = new Point(1,2);
        /*
        ==为值比较,比较两个变量值是否相同
        对于引用类型变量来说,保存地址,
        这就意味着比较的是他们是否为同一个对象
         */
        System.out.println(p==p2);//false
        /*
        equals方法并不关心两个对象是否为同一个对象,=而是关心两个内容是否相同
        Object定义的该方法内部使用"=="实现,所以应该重写该方法,否则没意义
         */
        System.out.println(p.equals(p2));//true

    }
}
